package week8;

import java.util.Scanner;

/**
 * Klasse voor het bijhouden van een ComputerSpeler 
 * in het Boter-Kaas-Eieren spel.
 * Practicumopdracht P1.
 * @author  Rick Clement & Adriaan Dekker.
 * @version $Revision: 1.4 $
 */
public class ComputerSpeler extends Speler {

	// -- Instantievariabelen ----------------------------------------
	private Strategie strategie;
	private Mark mark;

    // -- Constructors -----------------------------------------------

    /**
     * Construeert een nieuw Speler object.
     * @require <code>naam != null</code> <br>
     *          <code>mark == Bord.XX | Bord.OO</code>
     * @ensure  <code>this.getNaam() == naam</code><br>
     *          <code>this.getMark() == mark</code><br>
     */
    public ComputerSpeler(Mark mark, Strategie strategie) {
	    super(strategie.getNaam() + "-" + mark, mark);
    	this.mark = mark;
		this.strategie = strategie;
    }
	
	public ComputerSpeler(Mark mark) {
		this(mark, new DommeStrategie());
	}
    // -- Commands ---------------------------------------------------

    /**
     * Bepaalt het vakje voor de volgende zet van Speler s
     * door dit via de standard invoer/uitvoer te vragen.
     * @require <code>bord != null && s != null)</code>
     * @ensure  <code>bord.isVakje(result) && bord.isLeegVakje(result)</code>
     * @param   bord het spelersbord
     * @return  keuze van het vakje van deze Speler
     */
    public int bepaalZet(Bord bord) {
        return strategie.bepaalZet(bord, mark);
    }

} // end of class ComputerSpeler


